package com.qn.strategy.eums;

import lombok.Getter;

import java.util.Arrays;

/**
 * 促销类型
 *
 * @author Qning
 * @date 2021/09/09
 */
@Getter
public enum EnumPromotionType {
    /**
     * 乔丹
     */
    MJ("1", "MJ"),
    /**
     * 纽约
     */
    NY("2", "NY"),
    /**
     * zj
     */
    ZJ("3", "ZJ"),
    /**
     * zk
     */
    ZK("4", "ZK");

    /**
     * 状态码
     */
    private String code;

    /**
     * 状态描述
     */
    private String value;

    /**
     * 私有构造方法
     *
     * @param code  代码
     * @param value 描述
     */
    EnumPromotionType(String code, String value) {
        this.code = code;
        this.value = value;
    }

    /**
     * 根据编码查找枚举
     *
     * @param code 代码
     * @return {@link EnumPromotionType} 实例
     */
    public static EnumPromotionType find(String code) {
        return Arrays.stream(EnumPromotionType.values())
                .filter(input -> input.getCode().equals(code))
                .findFirst()
                .orElse(null);
    }
}
